[package]
name = "segment"
version = "0.6.0"
authors = [
    "Andrey Vasnetsov <vasnetsov93@gmail.com>",
    "Qdrant Team <info@qdrant.tech>",
]
license = "Apache-2.0"
edition = "2021"

[features]
multiling-chinese = ["charabia/chinese"]
multiling-japanese = ["charabia/japanese"]
multiling-korean = ["charabia/korean"]

[dev-dependencies]
tempfile = "3.8.0"
criterion = "0.5"
rmp-serde = "~1.1"
rand_distr = "0.4.3"
walkdir = "2.4.0"
rstest = "0.18.2"

[target.'cfg(not(target_os = "windows"))'.dev-dependencies]
pprof = { version = "0.12", features = ["flamegraph", "prost-codec"] }


[dependencies]

parking_lot = "0.12"
rayon = "1.7.0"
num_cpus = "1.16"
itertools = "0.11"
rocksdb = { version = "0.21.0", default-features = false, features = [ "snappy" ] }
uuid = { version = "1.4", features = ["v4", "serde"] }
bincode = "1.3"
serde = { version = "~1.0", features = ["derive", "rc"] }
serde_json = "~1.0"
serde_cbor = "0.11.2"
serde-value = "0.7"
ordered-float = "3.9"
thiserror = "1.0"
atomic_refcell = "0.1.11"
atomicwrites = "0.4.1"
memmap2 = "0.7.1"
schemars = { version = "0.8.15", features = ["uuid1", "preserve_order", "chrono"] }
log = "0.4"
geo = "0.26.0"
geohash = "0.13.0"
num-traits = "0.2.16"
num-derive = "0.4.0"
rand = "0.8"
bitvec = "1.0.1"
seahash = "4.1.0"
tar = "0.4.40"
fs_extra = "1.3.0"
semver = "1.0.18"
tinyvec = { version = "1.6.0", features = ["alloc"] }
quantization = { git = "https://github.com/qdrant/quantization.git" }
validator = { version = "0.16", features = ["derive"] }
chrono = { version = "0.4.31", features = ["serde"] }
smol_str = "0.2.0"

sysinfo = "0.29"
futures = "0.3.28"
charabia = { version = "0.8.3", default-features = false, features = ["greek", "hebrew", "thai"] }

common = { path = "../common/common" }
io = { path = "../common/io" }
memory = { path = "../common/memory" }
sparse = { path = "../sparse" }

tracing = { version = "0.1", features = ["async-await"], optional = true }

[target.'cfg(target_os = "linux")'.dependencies]
cgroups-rs = "0.3"
procfs = { version = "0.15", default-features = false }
io-uring = "0.6.2"

[[bench]]
name = "vector_search"
harness = false

[[bench]]
name = "hnsw_build_graph"
harness = false

[[bench]]
name = "hnsw_search_graph"
harness = false

[[bench]]
name = "conditional_search"
harness = false

[[bench]]
name = "hnsw_build_asymptotic"
harness = false

[[bench]]
name = "serde_formats"
harness = false

[[bench]]
name = "id_type_benchmark"
harness = false

[[bench]]
name = "map_benchmark"
harness = false

[[bench]]
name = "boolean_filtering"
harness = false

